/*
 * SPDX-License-Identifier: Apache-2.0
 *
 * Copyright 2015-2021 Andres Almiray
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.kordamp.ikonli.zondicons;

import org.kordamp.ikonli.Ikon;

/**
 * @author Loïc Sculier aka typhon0
 */
public enum Zondicons implements Ikon {
    // last is ea28
    ADD_OUTLINE("zondi-add-outline", '\uea28'),
    ADD_SOLID("zondi-add-solid", '\uea27'),
    ADJUST("zondi-adjust", '\uea26'),
    AIRPLANE("zondi-airplane", '\uea25'),
    ALBUM("zondi-album", '\uea24'),
    ALIGN_CENTER("zondi-align-center", '\uea23'),
    ALIGN_JUSTIFIED("zondi-align-justified", '\uea22'),
    ALIGN_LEFT("zondi-align-left", '\uea21'),
    ALIGN_RIGHT("zondi-align-right", '\uea20'),
    ANCHOR("zondi-anchor", '\uea1f'),
    ANNOUNCEMENT("zondi-announcement", '\uea1e'),
    APPAREL("zondi-apparel", '\uea1d'),
    ARROW_DOWN("zondi-arrow-down", '\uea1c'),
    ARROW_LEFT("zondi-arrow-left", '\uea1b'),
    ARROW_OUTLINE_DOWN("zondi-arrow-outline-down", '\uea1a'),
    ARROW_OUTLINE_LEFT("zondi-arrow-outline-left", '\uea19'),
    ARROW_OUTLINE_RIGHT("zondi-arrow-outline-right", '\uea18'),
    ARROW_OUTLINE_UP("zondi-arrow-outline-up", '\uea17'),
    ARROW_RIGHT("zondi-arrow-right", '\uea16'),
    ARROW_THICK_DOWN("zondi-arrow-thick-down", '\uea15'),
    ARROW_THICK_LEFT("zondi-arrow-thick-left", '\uea14'),
    ARROW_THICK_RIGHT("zondi-arrow-thick-right", '\uea13'),
    ARROW_THICK_UP("zondi-arrow-thick-up", '\uea12'),
    ARROW_THIN_DOWN("zondi-arrow-thin-down", '\uea11'),
    ARROW_THIN_LEFT("zondi-arrow-thin-left", '\uea10'),
    ARROW_THIN_RIGHT("zondi-arrow-thin-right", '\uea0f'),
    ARROW_THIN_UP("zondi-arrow-thin-up", '\uea0e'),
    ARROW_UP("zondi-arrow-up", '\uea0d'),
    ARTIST("zondi-artist", '\uea0c'),
    ATTACHMENT("zondi-attachment", '\uea0a'),
    AT_SYMBOL("zondi-at-symbol", '\uea0b'),
    BACKSPACE("zondi-backspace", '\uea09'),
    BACKWARD("zondi-backward", '\uea07'),
    BACKWARD_STEP("zondi-backward-step", '\uea08'),
    BADGE("zondi-badge", '\uea06'),
    BATTERY_FULL("zondi-battery-full", '\uea05'),
    BATTERY_HALF("zondi-battery-half", '\uea04'),
    BATTERY_LOW("zondi-battery-low", '\uea03'),
    BEVERAGE("zondi-beverage", '\uea02'),
    BLOCK("zondi-block", '\uea01'),
    BLUETOOTH("zondi-bluetooth", '\uea00'),
    BOLT("zondi-bolt", '\ue9ff'),
    BOOKMARK("zondi-bookmark", '\ue9f9'),
    BOOKMARK_COPY_2("zondi-bookmark-copy-2", '\ue9fd'),
    BOOKMARK_COPY_3("zondi-bookmark-copy-3", '\ue9fc'),
    BOOKMARK_OUTLINE("zondi-bookmark-outline", '\ue9fa'),
    BOOKMARK_OUTLINE_ADD("zondi-bookmark-outline-add", '\ue9fb'),
    BOOK_REFERENCE("zondi-book-reference", '\ue9fe'),
    BORDER_ALL("zondi-border-all", '\ue9f8'),
    BORDER_BOTTOM("zondi-border-bottom", '\ue9f7'),
    BORDER_HORIZONTAL("zondi-border-horizontal", '\ue9f6'),
    BORDER_INNER("zondi-border-inner", '\ue9f5'),
    BORDER_LEFT("zondi-border-left", '\ue9f4'),
    BORDER_NONE("zondi-border-none", '\ue9f3'),
    BORDER_OUTER("zondi-border-outer", '\ue9f2'),
    BORDER_RIGHT("zondi-border-right", '\ue9f1'),
    BORDER_TOP("zondi-border-top", '\ue9f0'),
    BORDER_VERTICAL("zondi-border-vertical", '\ue9ef'),
    BOX("zondi-box", '\ue9ee'),
    BRIGHTNESS_DOWN("zondi-brightness-down", '\ue9ed'),
    BRIGHTNESS_UP("zondi-brightness-up", '\ue9ec'),
    BROWSER_WINDOW("zondi-browser-window", '\ue9e9'),
    BROWSER_WINDOW_NEW("zondi-browser-window-new", '\ue9eb'),
    BROWSER_WINDOW_OPEN("zondi-browser-window-open", '\ue9ea'),
    BUG("zondi-bug", '\ue9e8'),
    BUOY("zondi-buoy", '\ue9e7'),
    CALCULATOR("zondi-calculator", '\ue9e6'),
    CALENDAR("zondi-calendar", '\ue9e5'),
    CAMERA("zondi-camera", '\ue9e4'),
    CHART("zondi-chart", '\ue9e1'),
    CHART_BAR("zondi-chart-bar", '\ue9e3'),
    CHART_PIE("zondi-chart-pie", '\ue9e2'),
    CHAT_BUBBLE_DOTS("zondi-chat-bubble-dots", '\ue9e0'),
    CHECKMARK("zondi-checkmark", '\ue9de'),
    CHECKMARK_OUTLINE("zondi-checkmark-outline", '\ue9df'),
    CHEVERON_DOWN("zondi-cheveron-down", '\ue9dd'),
    CHEVERON_LEFT("zondi-cheveron-left", '\ue9dc'),
    CHEVERON_OUTLINE_DOWN("zondi-cheveron-outline-down", '\ue9db'),
    CHEVERON_OUTLINE_LEFT("zondi-cheveron-outline-left", '\ue9da'),
    CHEVERON_OUTLINE_RIGHT("zondi-cheveron-outline-right", '\ue9d9'),
    CHEVERON_OUTLINE_UP("zondi-cheveron-outline-up", '\ue9d8'),
    CHEVERON_RIGHT("zondi-cheveron-right", '\ue9d7'),
    CHEVERON_UP("zondi-cheveron-up", '\ue9d6'),
    CLIPBOARD("zondi-clipboard", '\ue9d5'),
    CLOSE("zondi-close", '\ue9d2'),
    CLOSE_OUTLINE("zondi-close-outline", '\ue9d4'),
    CLOSE_SOLID("zondi-close-solid", '\ue9d3'),
    CLOUD("zondi-cloud", '\ue9d0'),
    CLOUD_UPLOAD("zondi-cloud-upload", '\ue9d1'),
    CODE("zondi-code", '\ue9cf'),
    COFFEE("zondi-coffee", '\ue9ce'),
    COG("zondi-cog", '\ue9cd'),
    COLOR_PALETTE("zondi-color-palette", '\ue9cc'),
    COMPOSE("zondi-compose", '\ue9cb'),
    COMPUTER_DESKTOP("zondi-computer-desktop", '\ue9ca'),
    COMPUTER_LAPTOP("zondi-computer-laptop", '\ue9c9'),
    CONVERSATION("zondi-conversation", '\ue9c8'),
    COPY("zondi-copy", '\ue9c7'),
    CREDIT_CARD("zondi-credit-card", '\ue9c6'),
    CURRENCY_DOLLAR("zondi-currency-dollar", '\ue9c5'),
    DASHBOARD("zondi-dashboard", '\ue9c4'),
    DATE_ADD("zondi-date-add", '\ue9c3'),
    DIAL_PAD("zondi-dial-pad", '\ue9c2'),
    DIRECTIONS("zondi-directions", '\ue9c1'),
    DOCUMENT("zondi-document", '\ue9bf'),
    DOCUMENT_ADD("zondi-document-add", '\ue9c0'),
    DOTS_HORIZONTAL_DOUBLE("zondi-dots-horizontal-double", '\ue9be'),
    DOTS_HORIZONTAL_TRIPLE("zondi-dots-horizontal-triple", '\ue9bd'),
    DOWNLOAD("zondi-download", '\ue9bc'),
    DUPLICATE("zondi-duplicate", '\ue9bb'),
    EDIT_COPY("zondi-edit-copy", '\ue9ba'),
    EDIT_CROP("zondi-edit-crop", '\ue9b9'),
    EDIT_CUT("zondi-edit-cut", '\ue9b8'),
    EDIT_PENCIL("zondi-edit-pencil", '\ue9b7'),
    EDUCATION("zondi-education", '\ue9b6'),
    ENVELOPE("zondi-envelope", '\ue9b5'),
    EXCLAMATION_OUTLINE("zondi-exclamation-outline", '\ue9b4'),
    EXCLAMATION_SOLID("zondi-exclamation-solid", '\ue9b3'),
    EXPLORE("zondi-explore", '\ue9b2'),
    FACTORY("zondi-factory", '\ue9b1'),
    FAST_FORWARD("zondi-fast-forward", '\ue9b0'),
    FAST_REWIND("zondi-fast-rewind", '\ue9af'),
    FILM("zondi-film", '\ue9ae'),
    FILTER("zondi-filter", '\ue9ad'),
    FLAG("zondi-flag", '\ue9ac'),
    FLASHLIGHT("zondi-flashlight", '\ue9ab'),
    FOLDER("zondi-folder", '\ue9a8'),
    FOLDER_OUTLINE("zondi-folder-outline", '\ue9a9'),
    FOLDER_OUTLINE_ADD("zondi-folder-outline-add", '\ue9aa'),
    FORMAT_BOLD("zondi-format-bold", '\ue9a7'),
    FORMAT_FONT_SIZE("zondi-format-font-size", '\ue9a6'),
    FORMAT_ITALIC("zondi-format-italic", '\ue9a5'),
    FORMAT_TEXT_SIZE("zondi-format-text-size", '\ue9a4'),
    FORMAT_UNDERLINE("zondi-format-underline", '\ue9a3'),
    FORWARD("zondi-forward", '\ue9a1'),
    FORWARD_STEP("zondi-forward-step", '\ue9a2'),
    GIFT("zondi-gift", '\ue9a0'),
    GLOBE("zondi-globe", '\ue99f'),
    HAND_STOP("zondi-hand-stop", '\ue99e'),
    HARD_DRIVE("zondi-hard-drive", '\ue99d'),
    HEADPHONES("zondi-headphones", '\ue99c'),
    HEART("zondi-heart", '\ue99b'),
    HOME("zondi-home", '\ue99a'),
    HOT("zondi-hot", '\ue999'),
    HOUR_GLASS("zondi-hour-glass", '\ue998'),
    INBOX("zondi-inbox", '\ue994'),
    INBOX_CHECK("zondi-inbox-check", '\ue997'),
    INBOX_DOWNLOAD("zondi-inbox-download", '\ue996'),
    INBOX_FULL("zondi-inbox-full", '\ue995'),
    INDENT_DECREASE("zondi-indent-decrease", '\ue993'),
    INDENT_INCREASE("zondi-indent-increase", '\ue992'),
    INFORMATION_OUTLINE("zondi-information-outline", '\ue991'),
    INFORMATION_SOLID("zondi-information-solid", '\ue990'),
    KEY("zondi-key", '\ue98f'),
    KEYBOARD("zondi-keyboard", '\ue98e'),
    LAYERS("zondi-layers", '\ue98d'),
    LIBRARY("zondi-library", '\ue98c'),
    LIGHT_BULB("zondi-light-bulb", '\ue98b'),
    LINK("zondi-link", '\ue98a'),
    LIST("zondi-list", '\ue987'),
    LIST_ADD("zondi-list-add", '\ue989'),
    LIST_BULLET("zondi-list-bullet", '\ue988'),
    LOAD_BALANCER("zondi-load-balancer", '\ue986'),
    LOCATION("zondi-location", '\ue97d'),
    LOCATION_CURRENT("zondi-location-current", '\ue985'),
    LOCATION_FOOD("zondi-location-food", '\ue984'),
    LOCATION_GAS_STATION("zondi-location-gas-station", '\ue983'),
    LOCATION_HOTEL("zondi-location-hotel", '\ue982'),
    LOCATION_MARINA("zondi-location-marina", '\ue981'),
    LOCATION_PARK("zondi-location-park", '\ue980'),
    LOCATION_RESTROOM("zondi-location-restroom", '\ue97f'),
    LOCATION_SHOPPING("zondi-location-shopping", '\ue97e'),
    LOCK_CLOSED("zondi-lock-closed", '\ue97c'),
    LOCK_OPEN("zondi-lock-open", '\ue97b'),
    MAP("zondi-map", '\ue97a'),
    MENU("zondi-menu", '\ue979'),
    MIC("zondi-mic", '\ue978'),
    MINUS_OUTLINE("zondi-minus-outline", '\ue977'),
    MINUS_SOLID("zondi-minus-solid", '\ue976'),
    MOBILE_DEVICES("zondi-mobile-devices", '\ue975'),
    MOOD_HAPPY_OUTLINE("zondi-mood-happy-outline", '\ue974'),
    MOOD_HAPPY_SOLID("zondi-mood-happy-solid", '\ue973'),
    MOOD_NEUTRAL_OUTLINE("zondi-mood-neutral-outline", '\ue972'),
    MOOD_NEUTRAL_SOLID("zondi-mood-neutral-solid", '\ue971'),
    MOOD_SAD_OUTLINE("zondi-mood-sad-outline", '\ue970'),
    MOOD_SAD_SOLID("zondi-mood-sad-solid", '\ue96f'),
    MOUSE("zondi-mouse", '\ue96e'),
    MUSIC_ALBUM("zondi-music-album", '\ue96d'),
    MUSIC_ARTIST("zondi-music-artist", '\ue96c'),
    MUSIC_NOTES("zondi-music-notes", '\ue96b'),
    MUSIC_PLAYLIST("zondi-music-playlist", '\ue96a'),
    NAVIGATION_MORE("zondi-navigation-more", '\ue969'),
    NETWORK("zondi-network", '\ue968'),
    NEWS_PAPER("zondi-news-paper", '\ue967'),
    NOTIFICATION("zondi-notification", '\ue966'),
    NOTIFICATIONS("zondi-notifications", '\ue964'),
    NOTIFICATIONS_OUTLINE("zondi-notifications-outline", '\ue965'),
    PASTE("zondi-paste", '\ue963'),
    PAUSE("zondi-pause", '\ue960'),
    PAUSE_OUTLINE("zondi-pause-outline", '\ue962'),
    PAUSE_SOLID("zondi-pause-solid", '\ue961'),
    PEN_TOOL("zondi-pen-tool", '\ue95f'),
    PHONE("zondi-phone", '\ue95e'),
    PHOTO("zondi-photo", '\ue95d'),
    PHP_ELEPHANT("zondi-php-elephant", '\ue95c'),
    PIN("zondi-pin", '\ue95b'),
    PLAY("zondi-play", '\ue959'),
    PLAYLIST("zondi-playlist", '\ue958'),
    PLAY_OUTLINE("zondi-play-outline", '\ue95a'),
    PLUGIN("zondi-plugin", '\ue957'),
    PORTFOLIO("zondi-portfolio", '\ue956'),
    PRINTER("zondi-printer", '\ue955'),
    PYLON("zondi-pylon", '\ue954'),
    QUESTION("zondi-question", '\ue953'),
    QUEUE("zondi-queue", '\ue952'),
    RADAR("zondi-radar", '\ue950'),
    RADAR_COPY_2("zondi-radar-copy-2", '\ue951'),
    RADIO("zondi-radio", '\ue94f'),
    REFRESH("zondi-refresh", '\ue94e'),
    RELOAD("zondi-reload", '\ue94d'),
    REPLY("zondi-reply", '\ue94b'),
    REPLY_ALL("zondi-reply-all", '\ue94c'),
    REPOST("zondi-repost", '\ue94a'),
    SAVE_DISK("zondi-save-disk", '\ue949'),
    SCREEN_FULL("zondi-screen-full", '\ue948'),
    SEARCH("zondi-search", '\ue947'),
    SEND("zondi-send", '\ue946'),
    SERVERS("zondi-servers", '\ue945'),
    SHARE("zondi-share", '\ue942'),
    SHARE_01("zondi-share-01", '\ue944'),
    SHARE_ALT("zondi-share-alt", '\ue943'),
    SHIELD("zondi-shield", '\ue941'),
    SHOPPING_CART("zondi-shopping-cart", '\ue940'),
    SHOW_SIDEBAR("zondi-show-sidebar", '\ue93f'),
    SHUFFLE("zondi-shuffle", '\ue93e'),
    STAND_BY("zondi-stand-by", '\ue93d'),
    STAR_FULL("zondi-star-full", '\ue93c'),
    STATION("zondi-station", '\ue93b'),
    STEP_BACKWARD("zondi-step-backward", '\ue93a'),
    STEP_FORWARD("zondi-step-forward", '\ue939'),
    STETHOSCOPE("zondi-stethoscope", '\ue938'),
    STORE_FRONT("zondi-store-front", '\ue937'),
    STROKE_WIDTH("zondi-stroke-width", '\ue936'),
    SUBDIRECTORY_LEFT("zondi-subdirectory-left", '\ue935'),
    SUBDIRECTORY_RIGHT("zondi-subdirectory-right", '\ue934'),
    SWAP("zondi-swap", '\ue933'),
    TABLET("zondi-tablet", '\ue932'),
    TAG("zondi-tag", '\ue931'),
    TARGET("zondi-target", '\ue930'),
    TEXT_BOX("zondi-text-box", '\ue92f'),
    TEXT_DECORATION("zondi-text-decoration", '\ue92e'),
    THERMOMETER("zondi-thermometer", '\ue92d'),
    THUMBS_DOWN("zondi-thumbs-down", '\ue92c'),
    THUMBS_UP("zondi-thumbs-up", '\ue92b'),
    TICKET("zondi-ticket", '\ue92a'),
    TIME("zondi-time", '\ue929'),
    TIMER("zondi-timer", '\ue928'),
    TOOLS_COPY("zondi-tools-copy", '\ue927'),
    TRANSLATE("zondi-translate", '\ue926'),
    TRASH("zondi-trash", '\ue925'),
    TRAVEL("zondi-travel", '\ue91e'),
    TRAVEL_BUS("zondi-travel-bus", '\ue924'),
    TRAVEL_CAR("zondi-travel-car", '\ue923'),
    TRAVEL_CASE("zondi-travel-case", '\ue922'),
    TRAVEL_TAXI_CAB("zondi-travel-taxi-cab", '\ue921'),
    TRAVEL_TRAIN("zondi-travel-train", '\ue920'),
    TRAVEL_WALK("zondi-travel-walk", '\ue91f'),
    TROPHY("zondi-trophy", '\ue91d'),
    TUNING("zondi-tuning", '\ue91c'),
    UPLOAD("zondi-upload", '\ue91b'),
    USB("zondi-usb", '\ue91a'),
    USER("zondi-user", '\ue915'),
    USER_ADD("zondi-user-add", '\ue919'),
    USER_GROUP("zondi-user-group", '\ue918'),
    USER_SOLID_CIRCLE("zondi-user-solid-circle", '\ue917'),
    USER_SOLID_SQUARE("zondi-user-solid-square", '\ue916'),
    VECTOR("zondi-vector", '\ue914'),
    VIDEO_CAMERA("zondi-video-camera", '\ue913'),
    VIEW_CAROUSEL("zondi-view-carousel", '\ue912'),
    VIEW_COLUMN("zondi-view-column", '\ue911'),
    VIEW_HIDE("zondi-view-hide", '\ue910'),
    VIEW_LIST("zondi-view-list", '\ue90f'),
    VIEW_SHOW("zondi-view-show", '\ue90e'),
    VIEW_TILE("zondi-view-tile", '\ue90d'),
    VOLUME_DOWN("zondi-volume-down", '\ue90c'),
    VOLUME_MUTE("zondi-volume-mute", '\ue90b'),
    VOLUME_OFF("zondi-volume-off", '\ue90a'),
    VOLUME_UP("zondi-volume-up", '\ue909'),
    WALLET("zondi-wallet", '\ue908'),
    WATCH("zondi-watch", '\ue907'),
    WINDOW("zondi-window", '\ue904'),
    WINDOW_NEW("zondi-window-new", '\ue906'),
    WINDOW_OPEN("zondi-window-open", '\ue905'),
    WRENCH("zondi-wrench", '\ue903'),
    YIN_YANG("zondi-yin-yang", '\ue902'),
    ZOOM_IN("zondi-zoom-in", '\ue901'),
    ZOOM_OUT("zondi-zoom-out", '\ue900');

    public static Zondicons findByDescription(String description) {
        for (Zondicons font : values()) {
            if (font.getDescription().equals(description)) {
                return font;
            }
        }
        throw new IllegalArgumentException("Icon description '" + description + "' is invalid!");
    }

    private String description;
    private int code;

    Zondicons(String description, int code) {
        this.description = description;
        this.code = code;
    }

    @Override
    public String getDescription() {
        return description;
    }

    @Override
    public int getCode() {
        return code;
    }
}